leetcodeJS

Personal solution for leetcode problem using Javascript

View on GitHub

Problem

Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).

For example: Given binary tree [3,9,20,null,null,15,7],

3    / \   9  20
/  \    15   7

return its level order traversal as:

[ [3], [9,20], [15,7] ]

Pre analysis

Will do recursive traversal

Another solution

var levelOrder = function(root) { const res = []; if (!root) return res; const q = [root]; let level = 0; while (q.length) { res.push([]); const level_length = q.length; for (let i = 0; i < level_length; i++) { const n = q.shift(); res[level].push(n.val); if (n.left) q.push(n.left); if (n.right) q.push(n.right); } level++; } return res; };